package com.cz.zslu.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 系统用户
 * </p>
 *
 * @author 森森
 * @since 2018-10-25
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("sys_user")
@AllArgsConstructor
@NoArgsConstructor
public class SysUser extends SuperEntity<SysUser> {

    private static final long serialVersionUID = 1L;

    /**
     * 状态  0：正常   1：禁用
     */
//    @TableLogic
    @ApiModelProperty("状态   0：正常   1：禁用")
    private Integer status = 0;

    /**
     * 状态 1 待审核 2 审核成功 3 审核失败 4待支付 5已支付  6待开通
     */
    @ApiModelProperty("状态 1 待审核 2 审核成功 3 审核失败 4待支付 5已支付 6待开通")
    private Integer state=6;
    /**
     * 用户名
     */
    @ApiModelProperty("用户名")
    private String username;
    /**
     * 密码
     */
    @ApiModelProperty("密码")
    private String password;
    /**
     * 邮箱
     */
    @ApiModelProperty("邮箱")
    private String email;
    /**
     * 手机号
     */
    @ApiModelProperty("手机号")
    private String phone;
    /**
     * 企业名称
     */
    @ApiModelProperty("企业名称")
    @TableField("company_name")
    private String companyName;
    /**
     * 认证申请表id
     */
    @ApiModelProperty("认证申请表id")
    @TableField("authentication_id")
    private Long authenticationId;
    /**
     * 店铺名称
     */
    @ApiModelProperty("店铺名称")
    @TableField("store_name")
    private String storeName;
    /**
     * 店铺id
     */
    @ApiModelProperty("店铺id")
    @TableField("store_id")
    private Long storeId;
    /**
     * 类型 1个人商铺 2商家商铺
     */
    @ApiModelProperty("类型 1个人商铺 2商家商铺")
    private Integer type;
    /**
     * 类型 1 厂家、2 经销商、3修理厂、4暂无
     */
    @ApiModelProperty("类型 1 厂家、2 经销商、3修理厂、4暂无")
    private Integer flat;
    /**
     * token
     */
    @ApiModelProperty("token")
    private String token;

    @ApiModelProperty("头像地址")
    @TableField("pic_url")
    private String picUrl;

    @ApiModelProperty("登录时间")
    @TableField(value = "login_time")
    private Date loginTime;

    /**
     * 可提现
     */
    @ApiModelProperty("可提现")
    @TableField("can_carry")
    private BigDecimal canCarry;

    /**
     * 已提现
     */
    @ApiModelProperty("已提现")
    @TableField("have_withdrawal")
    private BigDecimal haveWithdrawal;

    /**
     * 提现中
     */
    @ApiModelProperty("提现中")
    @TableField("withdrawal_of")
    private BigDecimal withdrawalOf;

    @ApiModelProperty("头像")
    @TableField("head_portraits")
    private String headPortraits;


    @ApiModelProperty("营销轮播剩余次数")
    @TableField("marketing_num")
    private Integer marketingNum;

    @ApiModelProperty("商家店铺到期时间")
    @TableField("end_time")
    @JSONField(format = "yyyy-MM-dd")
    private Date endTime;

    @ApiModelProperty("昵称")
    @TableField("nick_name")
    private String nickName;

    @TableField(exist = false)
    @ApiModelProperty("认证信息")
    private ZslAuthentication zslAuthentication;

}
